@font-face {
  font-family: "Oswald";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url("../../fonts/oswaldregular.woff") format("woff2");
}
@font-face {
  font-family: "Oswald";
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  src: url("../../fonts/oswaldmedium.woff2") format("woff2");
}
*,
*::before,
*::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  -webkit-clip-path: inset(100%);
          clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

.button {
  display: flex;
  justify-content: center;
  align-items: center;
  border: none;
  background-color: #68B738;
  color: #FFFFFF;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  text-decoration: none;
}

.page {
  block-size: 100%;
  font-family: "Arial", sans-serif;
  font-size: 14px;
  line-height: 18px;
}

.page__body {
  min-block-size: 100%;
  display: grid;
  grid-template-rows: min-content 1fr min-content;
  margin: 0;
  background-color: #FFFFFF;
  color: #000000;
}

@media (min-width: 768px) {
  .page-header {
    inline-size: 708px;
    margin-inline: auto;
  }
}
@media (min-width: 1440px) {
  .page-header {
    inline-size: 1220px;
  }
}

.page-header__logo:hover {
  opacity: 0.8;
}
.page-header__logo:active {
  opacity: 0.6;
}

@media (min-width: 768px) {
  .page-header__nav {
    display: flex;
    justify-content: space-between;
    -webkit-padding-before: 24px;
            padding-block-start: 24px;
  }
}
@media (min-width: 1440px) {
  .page-header__nav {
    -webkit-padding-before: 53px;
            padding-block-start: 53px;
  }
}

.page-header__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .page-header__bar {
    min-inline-size: 320px;
    margin-inline: auto;
    padding-inline: 20px;
    padding-block: 10px 18px;
  }
}
@media (min-width: 768px) {
  .page-header__bar {
    inline-size: 174px;
  }
}
@media (min-width: 1440px) {
  .page-header__bar {
    inline-size: 202px;
  }
}

.page-header__toggle {
  position: relative;
  display: block;
  inline-size: 24px;
  block-size: 16px;
  padding: 0;
  border: none;
  background-color: #FFFFFF;
}
@media (min-width: 768px) {
  .page-header__toggle {
    display: none;
  }
}

.page-header__nav--closed .page-header__toggle::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  inline-size: 24px;
  block-size: 3px;
  background-color: #000000;
  box-shadow: 0 8px 0 0 #000000, 0 16px 0 0 #000000;
}

.page-header__nav--opened .page-header__toggle::before,
.page-header__nav--opened .page-header__toggle::after {
  position: absolute;
  content: "";
  top: 6px;
  left: 0;
  inline-size: 24px;
  block-size: 3px;
  transform: rotate(45deg);
  background-color: #000000;
  box-shadow: none;
}

.page-header__nav--opened .page-header__toggle::before {
  transform: rotate(-45deg);
  box-shadow: none;
}

.page-header__menu {
  margin: 0;
}

@media (max-width: 767px) {
  .page-header__nav--closed .page-header__menu {
    display: none;
  }

  .page-header__nav--opened .page-header__menu {
    display: block;
    position: absolute;
    z-index: 5;
    inline-size: 100%;
  }
}
.main-nav {
  padding: 0;
  list-style: none;
  text-align: center;
  font-family: "Oswald", sans-serif;
  font-size: 20px;
  line-height: 1;
  font-weight: 500;
  text-transform: uppercase;
  background-color: #FFFFFF;
}
@media (min-width: 768px) {
  .main-nav {
    inline-size: 440px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
  }
}
@media (min-width: 1440px) {
  .main-nav {
    inline-size: 478px;
    font-size: 20px;
    line-height: 30px;
    background-color: transparent;
  }
}

@media (max-width: 767px) {
  .main-nav__item {
    position: relative;
    padding-block: 22px 24px;
  }
  .main-nav__item::before {
    position: absolute;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    inline-size: auto;
    min-inline-size: 320px;
    block-size: 1px;
    background-color: #E6E6E6;
  }
}
@media (min-width: 768px) {
  .main-nav__item:hover {
    opacity: 0.6;
  }
  .main-nav__item:active {
    position: relative;
  }
  .main-nav__item:active::before {
    position: absolute;
    content: "";
    bottom: -10px;
    inline-size: 100%;
    block-size: 2px;
    background-color: #68B738;
  }
}
@media (min-width: 768px) and (min-width: 1440px) {
  .main-nav__item:active::before {
    background-color: #FFFFFF;
  }
}

@media (min-width: 768px) {
  .main-nav__item--active {
    position: relative;
  }
  .main-nav__item--active::before {
    position: absolute;
    content: "";
    bottom: -10px;
    inline-size: 100%;
    block-size: 2px;
    background-color: #68B738;
  }
}
@media (min-width: 1440px) {
  .main-nav__item--active::before {
    background-color: #FFFFFF;
  }
}

.main-nav__link {
  color: inherit;
  text-decoration: none;
}
@media (min-width: 1440px) {
  .main-nav__link {
    color: #FFFFFF;
  }
}

.main-index__title {
  font-family: "Oswald", sans-serif;
  font-size: 36px;
  line-height: 1;
  font-weight: 400;
}
@media (min-width: 768px) {
  .main-index__title {
    font-size: 60px;
    line-height: 1;
  }
}

.wrapper {
  inline-size: 280px;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .wrapper {
    inline-size: 708px;
  }
}
@media (min-width: 1440px) {
  .wrapper {
    inline-size: 1220px;
  }
}

.promo {
  position: relative;
  -webkit-padding-before: 27px;
          padding-block-start: 27px;
  text-align: center;
  font-family: "Oswald", sans-serif;
}
@media (max-width: 767px) {
  .promo {
    background-color: #68B738;
    background-image: url("../../img/promo-background-mobile.jpg"), linear-gradient(#68B738 302px, #FFFFFF 302px);
    background-position: center top;
    background-repeat: no-repeat;
    color: #FFFFFF;
  }
  .promo::after {
    position: absolute;
    content: "";
    inset: 0;
    block-size: 302px;
    background-color: #68B738;
    opacity: 0.85;
  }
}
@media (min-width: 768px) {
  .promo {
    text-align: left;
    background-color: transparent;
  }
}
@media (min-width: 1440px) {
  .promo::before {
    position: absolute;
    content: "";
    z-index: -2;
    top: -95px;
    bottom: 0;
    left: 50%;
    right: 0;
    background-color: #68B738;
    background-image: url("../../img/promo-background-mobile.jpg");
    background-repeat: no-repeat;
    background-position: right 100%;
  }
  .promo::after {
    position: absolute;
    content: "";
    inset: 0;
    left: 50%;
    background-color: #68B738;
    opacity: 0.85;
  }
}

.promo__wrapper {
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .promo__wrapper {
    padding-inline: 90px;
    padding-block: 38px 526px;
    -webkit-margin-after: 0;
            margin-block-end: 0;
  }
}
@media (min-width: 1440px) {
  .promo__wrapper {
    padding-inline: 80px 610px;
    padding-block: 84px 185px;
    -webkit-margin-after: 82px;
            margin-block-end: 82px;
  }
}

.promo__title {
  margin-block: 0 25px;
  font-size: 36px;
  line-height: 1;
  font-weight: 400;
}
@media (min-width: 768px) {
  .promo__title {
    margin-block: 0 41px;
    font-size: 60px;
    line-height: 1;
    color: #000000;
  }
}

.promo__slogan {
  margin-block: 0 29px;
  line-height: 1;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .promo__slogan {
    -webkit-margin-after: 49px;
            margin-block-end: 49px;
    font-size: 20px;
    line-height: 1;
    color: #000000;
  }
}

.promo__img {
  inline-size: 280px;
}
@media (min-width: 768px) {
  .promo__img {
    position: absolute;
    left: 0;
    bottom: 0;
    inline-size: 709px;
    block-size: 609px;
    z-index: -1;
  }
}
@media (min-width: 1440px) {
  .promo__img {
    top: 32px;
    left: calc(50% - 162px);
    inline-size: 552px;
    block-size: 499px;
  }
}

.promo__button {
  inline-size: 280px;
  block-size: 40px;
  cursor: pointer;
}
.promo__button:hover, .promo__button:active {
  background-color: #5EAA2F;
}
.promo__button:active {
  color: rgba(255, 255, 255, 0.3);
}
@media (min-width: 768px) {
  .promo__button {
    inline-size: 244px;
    block-size: 54px;
  }
}

.programs__list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .programs__list {
    gap: 30px;
  }
}
@media (min-width: 1440px) {
  .programs__list {
    flex-direction: row;
    gap: 80px;
  }
}

.programs__item {
  background-color: #F2F2F2;
  border: 0px #D9D9D9 solid;
  -webkit-padding-start: 20px;
          padding-inline-start: 20px;
  -webkit-padding-after: 18px;
          padding-block-end: 18px;
}
@media (min-width: 768px) {
  .programs__item {
    -webkit-padding-start: 52px;
            padding-inline-start: 52px;
    -webkit-padding-after: 53px;
            padding-block-end: 53px;
  }
}
@media (min-width: 1440px) {
  .programs__item {
    inline-size: 570px;
    padding-inline: 52px;
    -webkit-padding-after: 55px;
            padding-block-end: 55px;
  }
}

.programs__title {
  position: relative;
  margin: 0;
  margin-block: 30px 29px;
  -webkit-padding-start: 71px;
          padding-inline-start: 71px;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  line-height: 37px;
  font-weight: 400;
  text-transform: uppercase;
}
.programs__title::before {
  position: absolute;
  content: "";
  left: 0;
  top: -6px;
  inline-size: 50px;
  block-size: 50px;
  border-radius: 50px;
  background-color: #68B738;
}
.programs__title::after {
  position: absolute;
  content: "";
  background-size: contain;
}
@media (min-width: 768px) {
  .programs__title {
    margin-block: 77px 24px;
    padding-inline: 0 229px;
    font-size: 36px;
    line-height: 1;
  }
  .programs__title::before {
    top: 15px;
    left: auto;
    right: 62px;
    inline-size: 200px;
    block-size: 200px;
    border-radius: 200px;
  }
}
@media (min-width: 1440px) {
  .programs__title {
    -webkit-margin-after: 73px;
            margin-block-end: 73px;
    padding-inline: 162px 0;
  }
  .programs__title::before {
    top: -30px;
    left: 0;
    right: 62px;
    inline-size: 100px;
    block-size: 100px;
    border-radius: 50%;
  }
}

.programs__item--slim .programs__title::after {
  top: -9px;
  left: 7px;
  inline-size: 36px;
  block-size: 50px;
  background-image: url(../../img/cat-slim.svg);
  background-repeat: no-repeat;
}
@media (min-width: 768px) {
  .programs__item--slim .programs__title::after {
    top: 4px;
    left: auto;
    right: 92px;
    inline-size: 140px;
    block-size: 194px;
  }
}
@media (min-width: 1440px) {
  .programs__item--slim .programs__title::after {
    top: -36px;
    left: 15px;
    inline-size: 70px;
    block-size: 97px;
  }
}

.programs__item--mass .programs__title::after {
  bottom: 4px;
  left: -10px;
  inline-size: 67px;
  block-size: 28px;
  background-image: url(../../img/cat-pro.svg);
  background-repeat: no-repeat;
}
@media (min-width: 768px) {
  .programs__item--mass .programs__title::after {
    top: 58px;
    left: auto;
    right: 28px;
    inline-size: 268px;
    block-size: 112px;
  }
}
@media (min-width: 1440px) {
  .programs__item--mass .programs__title::after {
    top: -4px;
    left: -19px;
    inline-size: 134px;
    block-size: 56px;
  }
}

.programs__description {
  position: relative;
  -webkit-margin-after: 38px;
          margin-block-end: 38px;
  color: #444444;
}
.programs__description::before {
  position: absolute;
  content: "";
  bottom: -22px;
  inline-size: 240px;
  block-size: 2px;
  background-color: #D9D9D9;
}
@media (min-width: 768px) {
  .programs__description {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
    -webkit-padding-end: 316px;
            padding-inline-end: 316px;
    font-size: 16px;
    line-height: 24px;
  }
  .programs__description::before {
    display: none;
  }
}
@media (min-width: 1440px) {
  .programs__description {
    -webkit-margin-after: 23px;
            margin-block-end: 23px;
    -webkit-padding-end: 0;
            padding-inline-end: 0;
  }
}

.programs__button {
  position: relative;
  inline-size: 134px;
  block-size: 24px;
  -webkit-padding-end: 47px;
          padding-inline-end: 47px;
  padding-block: 4px;
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  line-height: 1;
  font-weight: 400;
  text-transform: uppercase;
  text-decoration: none;
  color: inherit;
}
.programs__button::after {
  position: absolute;
  top: 13px;
  right: 0;
  content: "";
  inline-size: 32px;
  block-size: 10px;
  background-image: url("../../img/arrow.svg");
  background-size: 24px 12px;
  background-repeat: no-repeat;
}
.programs__button:hover::after {
  background-image: url(../../img/arrow-hover.svg);
  background-size: 32px 12px;
}
.programs__button:active {
  opacity: 0.3;
}
@media (min-width: 768px) {
  .programs__button {
    inline-size: 165px;
    block-size: 38px;
    font-size: 20px;
    line-height: 30px;
  }
}

.features__title {
  margin-block: 20px 40px;
  font-family: "Oswald", sans-serif;
  font-size: 36px;
  line-height: 40px;
  font-weight: 400;
}
@media (min-width: 768px) {
  .features__title {
    margin-block: 45px 32px;
    font-size: 60px;
    line-height: 1;
  }
}

.features__list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 0;
  -webkit-margin-after: 49px;
          margin-block-end: 49px;
  padding: 0;
  list-style-type: none;
  color: #444444;
  counter-reset: cnt;
}
@media (min-width: 768px) {
  .features__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 37px;
    -webkit-margin-after: 0;
            margin-block-end: 0;
    -webkit-padding-after: 47px;
            padding-block-end: 47px;
    font-size: 16px;
    line-height: 24px;
  }
  .features__list::after {
    position: absolute;
    content: "";
    bottom: 0;
    inline-size: 100%;
    block-size: 2px;
    background-color: #E6E6E6;
  }
}
@media (min-width: 1440px) {
  .features__list {
    grid-template-columns: repeat(4, 1fr);
    -webkit-padding-after: 26px;
            padding-block-end: 26px;
    -webkit-margin-after: 179px;
            margin-block-end: 179px;
  }
}

.features__item {
  position: relative;
  -webkit-padding-start: 80px;
          padding-inline-start: 80px;
  padding-block: 2px 4px;
  background-repeat: no-repeat;
  background-size: 60px 60px;
  background-position: left top;
  counter-increment: cnt 1;
}
@media (min-width: 768px) {
  .features__item {
    -webkit-padding-start: 0;
            padding-inline-start: 0;
    padding-block: 151px 57px;
    background-size: 80px 80px;
    background-position: left top 40px;
    font-size: 16px;
    line-height: 24px;
  }
  .features__item::after {
    position: absolute;
    content: counter(cnt);
    top: 0;
    left: 118px;
    z-index: -1;
    font-family: "Oswald", sans-serif;
    font-size: 280px;
    line-height: 1;
    color: #F2F2F2;
  }
}

.features__item--leaf {
  background-image: url("../../img/leaf.svg");
}

.features__item--powder {
  background-image: url("../../img/powder.svg");
}

.features__item--meal {
  background-image: url("../../img/meal.svg");
}

.features__item--weight {
  background-image: url("../../img/weight.svg");
}

.features__item--weight br {
  display: none;
}

.example {
  padding-block: 25px 40px;
  background-color: #EAEAEA;
}
@media (min-width: 768px) {
  .example {
    -webkit-padding-before: 43px;
            padding-block-start: 43px;
    background-image: linear-gradient(to top, #EAEAEA 462px, #FFFFFF 462px);
  }
}
@media (min-width: 1440px) {
  .example {
    -webkit-padding-after: 75px;
            padding-block-end: 75px;
  }
}

@media (min-width: 1440px) {
  .example__wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1440px) {
  .example__info {
    inline-size: 436px;
    display: flex;
    flex-direction: column;
  }
}

.example__title {
  margin: 0;
  margin-block: 0 40px;
  font-family: "Oswald", sans-serif;
  font-size: 36px;
  line-height: 40px;
  font-weight: 400;
}
@media (min-width: 768px) {
  .example__title {
    margin-block: 0 63px;
    font-size: 60px;
    line-height: 1;
  }
}
@media (min-width: 1440px) {
  .example__title {
    -webkit-margin-after: 146px;
            margin-block-end: 146px;
  }
}

.example__text {
  -webkit-margin-after: 20px;
          margin-block-end: 20px;
  color: #444444;
}
@media (min-width: 768px) {
  .example__text {
    -webkit-margin-after: 54px;
            margin-block-end: 54px;
    font-size: 16px;
    line-height: 24px;
  }
}
@media (min-width: 1440px) {
  .example__text {
    margin-block: 0 69px;
  }
}

@media (min-width: 768px) {
  .example__stats {
    display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 1440px) {
  .example__stats {
    flex-direction: column;
  }
}

.example__list {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  margin: 0;
  -webkit-margin-after: 20px;
          margin-block-end: 20px;
  padding: 0;
}
@media (min-width: 768px) {
  .example__list {
    gap: 42px;
    -webkit-margin-after: 80px;
            margin-block-end: 80px;
  }
}
@media (min-width: 1440px) {
  .example__list {
    -webkit-margin-after: 55px;
            margin-block-end: 55px;
  }
}

.example__item {
  position: relative;
  text-align: center;
}

.example__number {
  inline-size: 124px;
  block-size: 56px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px #CDCDCD solid;
  border-radius: 5%;
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  line-height: 1;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .example__number {
    inline-size: 162px;
    block-size: 72px;
    font-size: 30px;
    line-height: 37px;
  }
}

.example__description {
  position: relative;
  top: -12px;
  margin: 0;
  margin-inline: 19px;
  -webkit-margin-after: -12px;
          margin-block-end: -12px;
  border: 1px transparent solid;
  background-color: #EAEAEA;
  font-size: 12px;
  line-height: 1;
  text-transform: lowercase;
  color: #444444;
}
@media (min-width: 768px) {
  .example__description {
    top: -10px;
    margin-inline: 16px;
    -webkit-margin-after: -10px;
            margin-block-end: -10px;
    background-color: #FFFFFF;
    font-size: 14px;
    line-height: 1;
  }
}
@media (min-width: 1440px) {
  .example__description {
    background-color: #F2F2F2;
  }
}

@media (min-width: 768px) {
  .example__description br {
    display: none;
  }
}

.example__cost {
  -webkit-margin-after: 40px;
          margin-block-end: 40px;
  text-align: center;
  font-family: "Oswald", sans-serif;
  line-height: 20px;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .example__cost {
    -webkit-margin-before: 11px;
            margin-block-start: 11px;
    text-align: right;
    font-size: 20px;
    line-height: 1;
  }
}
@media (min-width: 1440px) {
  .example__cost {
    margin-block: 0;
    text-align: left;
  }
}

.example__cost br {
  display: none;
}
@media (min-width: 768px) {
  .example__cost br {
    display: block;
  }
}
@media (min-width: 1440px) {
  .example__cost br {
    display: none;
  }
}

@media (min-width: 768px) {
  .example__picture {
    border-top: 1px transparent solid;
    padding-inline: 59px 57px;
  }
}
@media (min-width: 1440px) {
  .example__picture {
    inline-size: 591px;
    display: flex;
    flex-direction: column;
    align-items: center;
    -webkit-margin-start: auto;
            margin-inline-start: auto;
  }
}

.example__history {
  -webkit-margin-after: 15px;
          margin-block-end: 15px;
}
@media (min-width: 768px) {
  .example__history {
    -webkit-margin-after: 25px;
            margin-block-end: 25px;
  }
}

.example__images {
  text-align: center;
}

.example__img {
  display: none;
}

.example__img--current {
  display: block;
}

.example__switcher {
  margin-inline: auto;
}
@media (min-width: 768px) {
  .example__switcher {
    -webkit-margin-after: 55px;
            margin-block-end: 55px;
  }
}

.switcher {
  inline-size: 210px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 768px) {
  .switcher {
    inline-size: 592px;
  }
}

.switcher__button {
  border: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: inherit;
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  line-height: 20px;
  text-transform: uppercase;
  cursor: pointer;
}
@media (min-width: 768px) {
  .switcher__button {
    inline-size: 70px;
    block-size: 40px;
    font-size: 20px;
    line-height: 30px;
  }
}

.switcher__toggles {
  inline-size: 86px;
  block-size: 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-inline: 13px;
  margin-block: 8px;
  padding-inline: 6px;
  padding-block: 4px;
  border: 1px #CDCDCD;
  border-radius: 6px;
  background-color: #FFFFFF;
}
@media (min-width: 768px) {
  .switcher__toggles {
    display: none;
  }
}

.switcher__toggle {
  inline-size: 36px;
  block-size: 6px;
  border: 1px transparent solid;
  border-radius: 6px;
  background-color: #68B738;
}

.switcher__toggle--after {
  position: relative;
  left: 36px;
}

.switcher__bar {
  -webkit-appearance: none;
          appearance: none;
  background-color: transparent;
}
@media (max-width: 767px) {
  .switcher__bar {
    display: none;
  }
}
@media (min-width: 768px) {
  .switcher__bar {
    flex-grow: 1;
  }
}

.contacts {
  position: relative;
}
@media (min-width: 1440px) {
  .contacts {
    z-index: 0;
    min-block-size: 400px;
    display: grid;
    grid-template-columns: 1220px;
    justify-content: center;
    align-items: center;
    -webkit-padding-after: 12px;
            padding-block-end: 12px;
  }
}

.contacts__wrapper {
  inline-size: 280px;
  margin-inline: auto;
  padding-block: 26px;
  display: flex;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .contacts__wrapper {
    inline-size: 708px;
    padding-inline: 40px;
    padding-block: 56px;
  }
}
@media (min-width: 1440px) {
  .contacts__wrapper {
    position: relative;
    z-index: 1;
    inline-size: 565px;
    margin-inline: 0 auto;
    padding-inline: 80px;
    background-color: #FFFFFF;
  }
}

.contacts__title {
  margin-block: 0;
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  text-transform: uppercase;
  color: #111111;
}
@media (min-width: 768px) {
  .contacts__title {
    margin-block: 4px 5px;
    font-size: 20px;
    line-height: 26px;
  }
}

.contacts__adress {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .contacts__adress {
    gap: 21px;
    -webkit-margin-before: 4px;
            margin-block-start: 4px;
  }
}

.contacts__text {
  line-height: 20px;
  font-style: normal;
  color: #444444;
}
@media (min-width: 768px) {
  .contacts__text {
    text-align: right;
    font-size: 16px;
    line-height: 20px;
  }
}

.contacts__map {
  display: block;
  inline-size: 100%;
  block-size: 362px;
  border: none;
}
@media (min-width: 768px) {
  .contacts__map {
    block-size: 400px;
  }
}
@media (min-width: 1440px) {
  .contacts__map {
    position: absolute;
    inset: 0;
  }
}

.page-footer {
  background-color: #F2F2F2;
}

.page-footer__wrapper {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .page-footer__wrapper {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-block: 58px 55px;
  }
}

.page-footer__logo {
  position: relative;
  margin-block: 39px 32px;
  text-align: center;
}
@media (max-width: 767px) {
  .page-footer__logo::after {
    position: absolute;
    content: "";
    left: 0;
    bottom: -32px;
    inline-size: 100%;
    block-size: 2px;
    background-color: #D9D9D9;
  }
}
.page-footer__logo:hover {
  fill-opacity: 0.8;
}
.page-footer__logo:active {
  fill-opacity: 0.6;
}
@media (min-width: 768px) {
  .page-footer__logo {
    margin: 0;
    padding-block: 5px;
  }
}

.page-footer__list {
  position: relative;
  margin-block: 20px 21px;
  padding: 0;
  text-align: center;
  list-style-type: none;
}
@media (max-width: 767px) {
  .page-footer__list::after {
    position: absolute;
    content: "";
    left: 0;
    bottom: -21px;
    inline-size: 100%;
    block-size: 2px;
    background-color: #D9D9D9;
  }
}
@media (min-width: 768px) {
  .page-footer__list {
    margin: 0;
  }
}

.page-footer__copyright {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-block: 22px;
  font-size: 16px;
  text-decoration: none;
  color: #444444;
}
.page-footer__copyright:hover .page-footer__icon {
  fill: #68B738;
}
.page-footer__copyright:active {
  opacity: 0.3;
}
.page-footer__copyright:active .page-footer__icon {
  fill-opacity: 0.3;
}
@media (min-width: 768px) {
  .page-footer__copyright {
    margin: 0;
  }
}

.page-footer__icon {
  -webkit-margin-start: 22px;
          margin-inline-start: 22px;
  fill: #666666;
}

.social {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 39px;
}
@media (min-width: 768px) {
  .social {
    gap: 14px;
  }
}

.social__icon {
  fill: #666666;
}

.social__link:hover .social__icon {
  fill: #68B738;
}

.social__link:active .social__icon {
  fill-opacity: 0.3;
}

.social__link--facebook .social__icon {
  fill: none;
  stroke: #666666;
}

.social__link--facebook:hover .social__icon {
  fill: none;
  stroke: #68B738;
}

.social__link--facebook:active .social__icon {
  opacity: 0.3;
}

.main-catalog__list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
@media (min-width: 768px) {
  .main-catalog__list {
    display: grid;
    grid-template-columns: repeat(2, 324px);
    gap: 60px;
  }
}
@media (min-width: 1440px) {
  .main-catalog__list {
    grid-template-columns: repeat(4, 245px);
    column-gap: 80px;
    row-gap: 63px;
  }
}

@media (min-width: 768px) {
  .main-catalog__item {
    text-align: center;
    background-color: #F2F2F2;
  }
}

.product__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.product__title {
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  text-transform: uppercase;
  color: #222222;
}

.product__list {
  font-size: 12px;
  line-height: 16px;
  color: #444444;
}

.product__button--show-more {
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  background-color: #F2F2F2;
  color: #444444;
}

.show-more {
  text-align: center;
}

.show-more__title {
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  text-transform: uppercase;
  color: #111111;
}

.show-more__text {
  font-size: 12px;
  line-height: 16px;
  color: #444444;
}

.add-catalog__title {
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  line-height: 1;
  font-weight: 400;
}
@media (min-width: 768px) {
  .add-catalog__title {
    font-size: 36px;
    line-height: 1;
  }
}

@media (min-width: 1440px) {
  .add-catalog__block {
    display: grid;
    grid-template-columns: 3fr 1fr;
    column-gap: 80px;
  }
}

.add-catalog__list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

@media (min-width: 1440px) {
  .add-catalog__item {
    display: flex;
    justify-content: space-between;
  }
}

.add-product__title {
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  line-height: 1;
  font-weight: 400;
  text-transform: uppercase;
  color: #222222;
}

.add-product__list {
  line-height: 1;
  color: #444444;
}

.gift {
  background-color: #68B738;
  background-image: url("../../img/catbag.jpg");
}

.gift__text {
  text-align: center;
  font-size: 16px;
  line-height: 20px;
  color: #FFFFFF;
}

@media (min-width: 768px) {
  .application__wrapper {
    -webkit-padding-start: 40px;
            padding-inline-start: 40px;
  }
}
@media (min-width: 1440px) {
  .application__wrapper {
    -webkit-padding-start: 0;
            padding-inline-start: 0;
  }
}

.application__text {
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .application__text {
    font-size: 20px;
    line-height: 30px;
  }
}

@media (min-width: 1440px) {
  .form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 80px;
  }
}

.form__group {
  margin: 0;
  padding: 0;
  border: none;
}

@media (min-width: 1440px) {
  .form__group--contacts,
.form__group--comment,
.form__group--more,
.form__submit {
    grid-column: 1/-1;
  }
}

@media (min-width: 1440px) {
  .form__group--contacts {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 80px;
  }
}

.form__title {
  font-family: "Oswald", sans-serif;
  font-size: 24px;
  line-height: 26px;
}

.form__list {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

@media (min-width: 768px) {
  .form__list--more {
    display: grid;
    grid-template-columns: 221px 221px;
    column-gap: 123px;
    row-gap: 32px;
  }
}
@media (min-width: 1440px) {
  .form__list--more {
    grid-template-columns: repeat(4, 221px);
    gap: 104px;
  }
}

.form__submit {
  text-align: center;
}
@media (min-width: 768px) {
  .form__submit {
    display: grid;
    grid-template-columns: 282px 282px;
    gap: 60px;
  }
}
@media (min-width: 1440px) {
  .form__submit {
    grid-template-columns: 568px 568px;
    gap: 80px;
  }
}

.form__add {
  text-align: center;
  line-height: 16px;
}
@media (min-width: 768px) {
  .form__add {
    text-align: left;
  }
}

.field__label {
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  text-transform: uppercase;
  color: #444444;
}

.field__input {
  border: 1px #E7E7E7 solid;
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  text-transform: uppercase;
  color: #444444;
}

.field__input--comment {
  inline-size: 100%;
  text-align: left;
}

.control__label {
  font-family: "Oswald", sans-serif;
  font-size: 16px;
  text-transform: uppercase;
  color: #222222;
}/*# sourceMappingURL=style.css.map */
